← Index
NYTProf Performance Profile   
For ../prof.pl
  Run on Wed Dec 14 15:33:55 2022
Reported on Wed Dec 14 15:40:04 2022

Filename(eval 430)[/Users/ether/.perlbrew/libs/36.0@std/lib/perl5/Sub/Quote.pm:3]
StatementsExecuted 1266 statements in 1.54ms
Eval Invoked At/Users/ether/.perlbrew/libs/36.0@std/lib/perl5/Sub/Quote.pm line 3
Sibling evals1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
24111.29ms3.15msType::Tiny::::__ANON__[:16]Type::Tiny::__ANON__[:16]
1118µs8µsType::Tiny::::BEGIN@9.332Type::Tiny::BEGIN@9.332
1115µs20µsType::Tiny::::BEGIN@16.333Type::Tiny::BEGIN@16.333
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1{
221µs my $_QUOTED = ${$_[1]->{"\$_QUOTED"}};
310s my $_UNQUOTED = ${$_[1]->{"\$_UNQUOTED"}};
4 package Type::Tiny;
5
# spent 3.15ms (1.29+1.86) within Type::Tiny::__ANON__[(eval 430)[/Users/ether/.perlbrew/libs/36.0@std/lib/perl5/Sub/Quote.pm:3]:16] which was called 24 times, avg 131µs/call: # 24 times (1.29ms+1.86ms) by JSON::Schema::Modern::__ANON__[/Users/ether/.perlbrew/libs/36.0@std/lib/perl5/JSON/Schema/Modern.pm:646] at line 177 of Sub/Defer.pm, avg 131µs/call
$$_UNQUOTED = sub {
6 ($_QUOTED,$_UNQUOTED) if 0;
7# BEGIN quote_sub PRELUDE
8package Type::Tiny;
9
# spent 8µs within Type::Tiny::BEGIN@9.332 which was called: # once (8µs+0s) by Sub::Quote::_clean_eval at line 14
BEGIN {
1011µs $^H = 1762;
1111µs ${^WARNING_BITS} = "UUUUUUUUUUUUUUUUUUUU";
1213µs %^H = (
13 );
14117µs18µs}
# spent 8µs making 1 call to Type::Tiny::BEGIN@9.332
15# END quote_sub PRELUDE
1612591.52ms6061.90ms
# spent 20µs (5+15) within Type::Tiny::BEGIN@16.333 which was called: # once (5µs+15µs) by Sub::Quote::_clean_eval at line 16
do { no warnings "void"; package Type::Tiny; (do { package Type::Tiny; (Ref::Util::XS::is_plain_hashref($_[0])) and (not grep {my $v = ($_[0])->{$_};not((/\A(?:canonical_uri|path|specification_version|document|vocabularies|configs)\z/) or (((!!1)) and ((!defined($v)))))} keys %{$_[0]}) and exists($_[0]->{"canonical_uri"}) and do { package Type::Tiny; Scalar::Util::blessed($_[0]->{"canonical_uri"}) and $_[0]->{"canonical_uri"}->isa(q[Mojo::URL]) } and exists($_[0]->{"path"}) and do { package Type::Tiny; defined($_[0]->{"path"}) and do { ref(\$_[0]->{"path"}) eq 'SCALAR' or ref(\(my $val = $_[0]->{"path"})) eq 'SCALAR' } } and exists($_[0]->{"specification_version"}) and (defined($_[0]->{"specification_version"}) and !ref($_[0]->{"specification_version"}) and $_[0]->{"specification_version"} =~ m{\A(?:draft(?:20(?:19\-09|20\-12)|7))\z}) and exists($_[0]->{"document"}) and do { package Type::Tiny; Scalar::Util::blessed($_[0]->{"document"}) and $_[0]->{"document"}->isa(q[JSON::Schema::Modern::Document]) } and exists($_[0]->{"vocabularies"}) and (do { package Type::Tiny; Ref::Util::XS::is_plain_arrayref($_[0]->{"vocabularies"}) } and do { my $ok = 1; for my $i (@{$_[0]->{"vocabularies"}}) { ($ok = 0, last) unless ((do { package Type::Tiny; Types::Standard::_is_class_loaded(do { my $tmp = $i }) }) && (do { local $_ = $i; $_->DOES('JSON::Schema::Modern::Vocabulary') })) }; $ok }) and exists($_[0]->{"configs"}) and do { package Type::Tiny; Ref::Util::XS::is_plain_hashref($_[0]->{"configs"}) } }) or Type::Tiny::_failed_check(70, "Dict[canonical_uri=>InstanceOf[\"Mojo::URL\"],configs=>HashRef,document=>InstanceOf[\"JSON::Schema::Modern::Document\"],path=>Str,specification_version=>Enum[\"draft7\",\"draft2019-09\",\"draft2020-12\"],vocabularies=>ArrayRef[__ANON__],Slurpy[HashRef[Undef]]]", $_[0], ); $_[0] }; };
# spent 510µs making 170 calls to Types::Standard::__ANON__[(eval 46)[Types/Standard.pm:48]:16], avg 3µs/call # spent 266µs making 24 calls to JSON::Schema::Modern::Vocabulary::Core::DOES, avg 11µs/call # spent 154µs making 24 calls to JSON::Schema::Modern::Vocabulary::MetaData::DOES, avg 6µs/call # spent 141µs making 24 calls to JSON::Schema::Modern::Vocabulary::Unevaluated::DOES, avg 6µs/call # spent 140µs making 24 calls to JSON::Schema::Modern::Vocabulary::Validation::DOES, avg 6µs/call # spent 138µs making 24 calls to JSON::Schema::Modern::Vocabulary::Applicator::DOES, avg 6µs/call # spent 135µs making 24 calls to JSON::Schema::Modern::Vocabulary::FormatAnnotation::DOES, avg 6µs/call # spent 128µs making 24 calls to JSON::Schema::Modern::Vocabulary::Content::DOES, avg 5µs/call # spent 121µs making 168 calls to Type::Tiny::CORE:match, avg 720ns/call # spent 69µs making 48 calls to UNIVERSAL::isa, avg 1µs/call # spent 36µs making 2 calls to JSON::Schema::Modern::Vocabulary::OpenAPI::DOES, avg 18µs/call # spent 27µs making 48 calls to Scalar::Util::blessed, avg 562ns/call # spent 20µs making 1 call to Type::Tiny::BEGIN@16.333 # spent 15µs making 1 call to warnings::unimport
17}
1813µs1;
19
20;